home *** CD-ROM | disk | FTP | other *** search
Text File | 1992-01-22 | 25.5 KB | 651 lines | [TEXT/MPS ] |
- /*
- * This is a sample Installer 3.2 Script. It demonstrates the use of Easy Install to make
- * decisions about what to install based on the machine type, memory size, etc.
- * I have included one of most script resource types
- * NOTE: this sample is receiving only limited upgrades - the desk accessory is installed
- * only in pre-system 7.0 fashion, see elsewhere for an upto date sample on installing desk
- * accessories
- */
-
-
- /* If you include these two files within the script file, you don't need them on the rez line*/
- #include "Types.r" /* for the ICON resources */
- #include "InstallerTypes.r" /* for the rest of the script resources */
-
- /* You can build the script with the following lines:
- rez -o "PaintWorx™ Script" -t 'bjbc' -c 'bjbc' "Script Example.r"
- setfile -a i "PaintWorx™ Script"
- scriptcheck -p "PaintWorx™ Script"
- */
-
-
- #define kHaveScriptCheckFillInDate 0x01 /* insert this value in 'infs' to have ScriptCheck fill in date */
-
-
- /*
- * Symbolic definitions for script resources make the scripts easier to read and easier to
- * combine with other scripts. Note: For the different script resource such as 'inpk',
- * 'infs', 'inra', etc. the #defines obviously must be unique within one particular resource
- * but we could have an 'inpk' 1000 and 'inra' 1000. BUT, for clarity, I define each resource
- * types with different base values, starting from 1000, 2000, etc.
- */
-
-
- /* Definitions for the easy install rules */
- #define rlCheckMemSize 1000
- #define rlCheckAuditTrail 1001
- #define rlOutputMemSizeError 1002
- #define rlCheckHardDisk 1003
- #define rlCheckFDHD 1004
- #define rlOtherDisk 1005
- #define rlDescrBaseStuff 1006
- #define rlDescrAlmostEvery 1007
- #define rlDescrEverything 1008
-
- /* Definitions for the assertions we will set and use in the rules */
- #define asDoTheInstall 2000
- #define asInstallEverything 2001
- #define asInstallAlmostEverything 2002
- #define asInstallBaseStuff 2003
-
- /*
- * Definitions for the file spec atoms. These tell where we expect to find the files
- * on the source disks and where we want them installed on the target disk.
- */
- #define fsSourcePaintProgram 3000
- #define fsSourceExampleFile 3001
- #define fsSourceDocumentFile 3002
- #define fsSourceExtrasRsrcs 3003
-
- #define fsTargetPaintProgram 3004
- #define fsTargetExampleFile 3005
- #define fsTargetDocumentFile 3006
-
- #define fsTargetSystem 3007
-
- /* These are the names of the source disks */
- #define ProgramDisk "Program Disk:"
- #define ExtrasDisk "Extras Disk:"
-
- /* This is the target path where we want to install our files.*/
- #define TargetPath ":PaintWorx™ Application:"
-
- /* Definitions for the packages. */
- #define pkBaseStuff 4000
- #define pkExamples 4001
- #define pkExtraDocuments 4002
-
- #define pkBaseFilesRsrcs 4003
- #define pkExampleFiles 4004
- #define pkDocumentFiles 4005
-
- /* Definitions for the package comment resources*/
- #define cmtBaseStuff 5000
- #define cmtExamples 5001
- #define cmtExtraDocuments 5002
-
- /*
- * April 5, 1990 is the current release date to put in 'icmt' rsrcs. ScriptCheck
- * will convert this value to a LongInt seconds value needed by the Installer.
- */
- #define currentReleaseDate 4051990
-
- #define currentVersion 300 /* Version 3.0 goes in the 'icmt' rsrc*/
-
- #define iconPaintWorx 5100
-
- /* Definitions for the resource atoms */
- #define raNewColorDA 6000
- #define raSpecialColorRsrc 6001
- #define raOldRsrcToDelete 6002
-
- /* Definitions for the file atoms */
- #define faPaintProgram 7000
- #define faExampleFile 7001
- #define faDocumentFile 7002
-
- /*
- * Definitions for the audit trail atoms that we check and install. These audit
- * trail atoms allow us to leave a "trail" in the target system file that can tell
- * us anything we want. In this case, the audit atoms will tell us which versions
- * of our software we have installed previously on this target volume.
- */
-
- /*
- * Remember: Apple has reserved all lower case audit selectors. (These should
- * correspond to your Creator Type which you have registered with Developer
- * Technical Support
- */
-
- #define auditPaintWorx 'PWRX'
- #define auditInstalledVer1 1
- #define auditInstalledVer2 2
- #define auditInstalledVer3 3
-
- /* This definition is for the actual 'inat' audit trail atom we'll install */
- #define atPaintWorxVer3 8000
-
- /************************** Easy Install Rule resources follow **********************************/
-
- /*
- * The 'infr' and 'inrl' Easy Install script resources allow a very natural, programatic
- * structure in writing Easy Install logic. See the "Installer 3.1 Scripting Guide"
- * for more details on this topic.
- */
-
-
- /*
- * I will present the pseudo-code for the framework logic and then present the actual 'infr'
- * resource. This pseudo-code is just to help explain the framework
- */
-
- /*
- * The pickFirst rule groups in the framework correspond to IF-THEN-ELSE type constructs,
- * where a maximum of 1 action can be taken for the group:
- * IF expression THEN
- * action
- * ELSE IF expression THEN
- * action
- * ELSE …
- */
-
- /*
- * The pickAll rule groups in the framework correspond to IF-THEN type constructs, where
- * up to all of the actions can be taken for the group:
- * IF expression THEN
- * action
- * IF expression THEN
- * action
- * IF …
- */
-
- #if false /* Following lines are not Rez'ed */
- IF (Memory >= 2MB) THEN /* say our product only runs on 2MB systems */
- DoTheInstall
- ELSE IF (Audit trail says we installed Version 1, 2, or 3 of our software before) THEN
- DoTheInstall /* Note: even if the system we're running on only has 1MB of memory */
- /* we will still update the software because it was installed on the */
- /* disk previously. This allows an administrator to update a volume */
- /* using a machine that doesn't have the 2MB requirement. */
- ELSE
- Output Memory Too Small Error
-
-
- /* We make our decisions about what packages to install based on the size of the target volume. */
- IF DoTheInstall & (Target Volume >= HD) THEN
- InstallEverything
- ELSE IF DoTheInstall & (Target Volume >= FDHD) THEN
- InstallAlmostEverything
- ELSE IF DoTheInstall & (Target Volume = Floppy) THEN
- InstallBaseStuff
-
-
- IF DoTheInstall & (Installing BaseStuff, AlmostEverything, or Everything) THEN
- Add User Description for the BaseStuff part
- IF DoTheInstall & (Installing AlmostEverything or Everything) THEN
- Add User Description for the AlmostEverything part
- IF DoTheInstall & (Installing Everything) THEN
- Add User Description for the Everything part
-
-
- #endif /* we Rez the following lines */
-
- resource 'infr' (1) { /* The framework groups the rules into a logical order of execution */
- format0 {{
- pickFirst, {rlCheckMemSize, rlCheckAuditTrail, rlOutputMemSizeError}, /* Select one of these three rules */
- pickFirst, {rlCheckHardDisk, rlCheckFDHD, rlOtherDisk}, /* Select one of these three rules */
- pickAll, {rlDescrBaseStuff, rlDescrAlmostEvery, rlDescrEverything} /* Select zero to three of these rules */
- }};
- };
-
-
- resource 'inrl' (rlCheckMemSize) {
- format0 {{
- checkMinMemory {2}, /* If the system has at least 2MB memory, then add this assertion */
- addAssertion {{asDoTheInstall}} /* An assertion is essentially a boolean variable, adding it makes the variable true */
- }};
- };
-
- resource 'inrl' (rlCheckAuditTrail) {
- format0 {{
-
- /* checkAnyAuditRec looks in the target file (the System file in this case) and sees if any of the values */
- /* for the audit selector exist. Our audit selector in this case is auditPaintWorx and we want to see if */
- /* any of the values auditInstalledVer1 … 3 are present. If so, we add assert that we want to DoTheInstall */
-
- checkAnyAuditRec {fsTargetSystem, auditPaintWorx,
- {auditInstalledVer1, auditInstalledVer2, auditInstalledVer3}},
- addAssertion {{asDoTheInstall}}
- }};
- };
-
- resource 'inrl' (rlOutputMemSizeError) {
- format0 {{
- /* These two lines of error messages will be output on the Easy Install screen if this rule */
- /* is fired. It is fired only if the two other rules in this pickFirst group do NOT fire. */
-
- reportSysError {"To use PaintWorx™ 3.0 you need:\n\n"}, /* up to 4 lines of error reporting may be */
- reportSysError {"• At least 2 Megabytes of Memory\n"} /* displayed in the Easy Install screen. */
- }};
- };
-
-
- resource 'inrl' (rlCheckHardDisk) {
- format0 {{
- checkAllAssertions {{asDoTheInstall}}, /* Make sure we made the decision to Install above */
- checkTgtVolSize {hardDisk, hardDisk}, /* HD is 10MB or greater */
- addAssertion {{asInstallEverything}}, /* Assert the variable that says what we're installing */
- addPackages {{pkBaseFilesRsrcs, pkExampleFiles, pkDocumentFiles}} /* These 3 packages include everything that */
- /* we want to install. */
- }};
- };
-
- resource 'inrl' (rlCheckFDHD) {
- format0 {{
- checkAllAssertions {{asDoTheInstall}}, /* Make sure we made the decision to Install above */
- checkTgtVolSize {hdFloppy, hdFloppy}, /* FDHD is defined as hdFloppy in InstallerTypes.r */
- addAssertion {{asInstallAlmostEverything}}, /* Assert the variable that says what we're installing */
- addPackages {{pkBaseFilesRsrcs, pkExampleFiles}} /* For a FDHD, we don't install as much as a Hard Disk */
- }};
- };
-
- resource 'inrl' (rlOtherDisk) {
- format0 {{
- checkAllAssertions {{asDoTheInstall}}, /* Make sure we made the decision to Install above */
- checkTgtVolSize {floppy, floppy}, /* Are we installing onto a floppy?*/
- addAssertion {{asInstallBaseStuff}}, /* Assert the variable that says what we're installing */
- addPackages {{pkBaseFilesRsrcs}} /* For a floppy, we're only installing the program, no extras*/
- }};
- };
-
-
- resource 'inrl' (rlDescrBaseStuff) {
- format0 {{
- /* If we're installing anything, we want to present this message in Easy Install screen */
- /* We make this decision by checking the assertions that may have been set previously*/
-
- checkAnyAssertion {{asInstallBaseStuff, asInstallAlmostEverything, asInstallEverything}},
-
- addUserDescription {"Version 3.0 of:\n"}, /* message to appear in Easy Install screen */
- addUserDescription {"• PaintWorx™ application software\n"} /* can be up to 4 lines of text.*/
- }};
- };
-
- resource 'inrl' (rlDescrAlmostEvery) {
- format0 {{
- /* We add this description if we're installing the example stuff. Again we look at the assertions */
- /* set to decide whether to add the description or not.*/
- checkAnyAssertion {{asInstallAlmostEverything, asInstallEverything}},
- addUserDescription {"• PaintWorx™ example pictures\n"}
- }};
- };
-
- resource 'inrl' (rlDescrEverything) {
- format0 {{
- checkAllAssertions {{asInstallEverything}},
- addUserDescription {"• PaintWorx™ extra documentation\n"}
- }};
- };
-
-
-
- /***************************** Package Resources ************************************************/
-
- /* These first three packages are ShowsOnCustom packages; that means that they are displayed*/
- /* and are selectable in the Custom Install screen.*/
-
- resource 'inpk' (pkBaseStuff) {
- format0 {
- showsOnCustom, /* Package appears in the Custom Install display */
- removable, /* Package can be removed */
- forceRestart, /* Need to restart the mac if we install this pack */
- cmtBaseStuff, /* Package 'icmt' resource ID*/
- 0, /* Package size (filled in by ScriptCheck) */
- "PaintWorx™ application software", { /* Package Name */
- 'inpk', pkBaseFilesRsrcs;
- }
- }
- };
-
- resource 'inpk' (pkExamples) {
- format0 {
- showsOnCustom, /* Package appears in the Custom Install display */
- removable, /* Package can be removed */
- dontForceRestart, /* No need to restart the mac if we install this pack */
- cmtExamples, /* Package 'icmt' resource ID*/
- 0, /* Package size (filled in by ScriptCheck)*/
- "PaintWorx™ example pictures", { /* Package Name*/
- 'inpk', pkExampleFiles;
- }
- }
- };
-
- resource 'inpk' (pkExtraDocuments) {
- format0 {
- showsOnCustom, /* Package appears in the Custom Install display */
- removable, /* Package can be removed */
- dontForceRestart, /* No need to restart the mac if we install this pack */
- cmtExtraDocuments, /* Package 'icmt' resource ID*/
- 0, /* Package size (filled in by ScriptCheck)*/
- "PaintWorx™ extra documentation", { /* Package Name*/
- 'inpk', pkDocumentFiles;
- }
- }
- };
-
- /* Comment resources for each of those three ShowsOnCustom packages */
-
- resource 'icmt' (cmtBaseStuff) {
- currentReleaseDate,
- currentVersion,
- iconPaintWorx,
- "This package contains the PaintWorx™ application software. "
- };
-
- resource 'icmt' (cmtExamples) {
- currentReleaseDate,
- currentVersion,
- iconPaintWorx,
- "This package contains the PaintWorx™ example files. "
- "These pictures show you the power of the software and "
- "the amazing things YOU can do (if you own a graphic artist). "
- };
-
- resource 'icmt' (cmtExtraDocuments) {
- currentReleaseDate,
- currentVersion,
- iconPaintWorx,
- "This package contains the PaintWorx™ documentation. "
- "This is great late-night reading when your life is "
- "really getting boring. "
- };
-
- resource 'ICON' (iconPaintWorx) {
- $"0001 0000 0002 8000 0004 4000 0008 2000"
- $"0010 7000 0020 F800 0041 FC00 0083 FA00"
- $"0102 F100 0205 E080 0409 C040 0802 8020"
- $"1001 0010 2002 0008 4000 3F04 8008 4082"
- $"4010 8041 2031 3022 1039 C814 081E 7F8F"
- $"0402 3007 0201 0007 0100 8007 0080 6007"
- $"0040 1FE7 0020 021F 0010 040F 0008 0800"
- $"0004 1000 0002 2000 0001 4000 0000 80"
- };
-
-
- /* The next three packages were created because they are used a couple of times by the rules */
- /* that add packages. By grouping all of these things into packages this way, instead of making */
- /* each package above list all the individual package components, we reduce the chance of */
- /* accidently forgetting to include a resource somewhere. */
-
- resource 'inpk' (pkBaseFilesRsrcs) {
- format0 {
- notShowsOnCustom, /* Package does not appear in the Custom Install display */
- removable, /* Package can be removed */
- forceRestart, /* installing a DA and resource into system file so must reboot */
- 0, /* do not need an 'icmt' for a package that does not show on custom */
- 0, /* Package size (filled in by ScriptCheck) */
- "", { /* do not need an package name for package that does not show on custom */
- 'infa', faPaintProgram;
- 'inra', raNewColorDA;
- 'inra', raSpecialColorRsrc;
- 'inra', raOldRsrcToDelete;
- 'inat', atPaintWorxVer3; /* We want to install the audit trail atom when the program is installed */
- }
- }
- };
-
- resource 'inpk' (pkExampleFiles) {
- format0 {
- notShowsOnCustom, /* Package does not appear in the Custom Install display */
- removable, /* Package can be removed */
- dontForceRestart, /* restart not necessary */
- 0, /* do not need an 'icmt' for a package that does not show on custom */
- 0, /* Package size (filled in by ScriptCheck)*/
- "", { /* do not need an package name for package that does not show on custom*/
- 'infa', faExampleFile;
- }
- }
- };
-
- resource 'inpk' (pkDocumentFiles) {
- format0 {
- notShowsOnCustom, /* Package does not appear in the Custom Install display */
- removable, /* Package can be removed */
- dontForceRestart, /* restart not required */
- 0, /* do not need an 'icmt' for a package that does not show on custom */
- 0, /* Package size (filled in by ScriptCheck) */
- "", { /* do not need an package name for package that does not show on custom*/
- 'infa', faDocumentFile;
- }
- }
- };
-
-
- /********************************************* File Specs ***************************************************/
-
- /* These resource tell where we expect files on the source disks and where to install them on the target */
-
- /* Source File Specs */
- resource 'infs' (fsSourcePaintProgram) {
- 'APPL', /* File Type */
- 'PWRX', /* File Creator */
- kHaveScriptCheckFillInDate, /* ScriptCheck tool will fill in the creation date */
- noSearchForFile, /* Do not search the source disk for the file */
- TypeCrMustMatch, /* The file type and creator on source disk must match */
- ProgramDisk"PaintWorx™" /* Path where to find the file */
- };
-
- resource 'infs' (fsSourceExampleFile) {
- 'pdoc', /* File Type */
- 'PWRX', /* File Creator */
- kHaveScriptCheckFillInDate, /* ScriptCheck tool will fill in the creation date */
- noSearchForFile, /* Do not search the source disk for the file */
- TypeCrMustMatch, /* The file type and creator on source disk must match */
- ExtrasDisk"Examples:Example Picture" /* Path where to find the file */
- };
-
- resource 'infs' (fsSourceDocumentFile) {
- 'ttro', /* File Type (teachtext doc) */
- 'ttxt', /* File Creator */
- kHaveScriptCheckFillInDate, /* ScriptCheck tool will fill in the creation date */
- noSearchForFile, /* Do not search the source disk for the file */
- TypeCrMustMatch, /* The file type and creator on source disk must match */
- ExtrasDisk"Documents:Info File" /* Path where to find the file */
- };
-
- resource 'infs' (fsSourceExtrasRsrcs) {
- 'ZSYS', /* File Type */
- 'MACS', /* File Creator */
- kHaveScriptCheckFillInDate, /* ScriptCheck tool will fill in the creation date */
- noSearchForFile, /* Do not search the source disk for the file */
- TypeCrMustMatch, /* The file type and creator on source disk must match */
- ProgramDisk"System Folder:System" /* Path where to find the file */
- };
-
-
- /* Target File Specs */
-
- resource 'infs' (fsTargetPaintProgram) {
- 'APPL', /* File Type */
- 'PWRX', /* File Creator */
- 0, /* not needed for target file specs */
- noSearchForFile, /* Do not search the target disk for the file */
- TypeCrMustMatch, /* not needed for target file specs */
- TargetPath"PaintWorx™" /* Path to install the file into */
- };
-
- resource 'infs' (fsTargetExampleFile) {
- 'pdoc', /* File Type */
- 'PWRX', /* File Creator */
- 0, /* not needed for target file specs */
- noSearchForFile, /* Do not search the target disk for the file */
- TypeCrMustMatch, /* not needed for target file specs */
- TargetPath"Examples:Example Picture" /* Path to install the file into */
- };
-
- resource 'infs' (fsTargetDocumentFile) {
- 'ttro', /* File Type */
- 'ttxt', /* File Creator */
- 0, /* not needed for target file specs */
- noSearchForFile, /* Do not search the target disk for the file */
- TypeCrMustMatch, /* not needed for target file specs */
- TargetPath"Documents:Info File" /* Path to install the file into */
- };
-
- resource 'infs' (fsTargetSystem) {
- 'ZSYS', /* File Type */
- 'MACS', /* File Creator */
- 0, /* not needed for target file specs */
- noSearchForFile, /* Do not search the target disk for the file */
- TypeCrNeedNotMatch, /* not needed for target file specs */
- "Blessed:System" /* Path to install the file into */
- };
-
-
-
- /******************************************** File Atoms ************************************************/
-
- /* The file atoms define the details of installing files - which forks, update only, etc. */
-
- resource 'infa' (faPaintProgram) {
- format0 {
- deleteWhenRemoving, /* Delete the file if remove is clicked */
- dontDeleteWhenInstalling, /* no need to delete the target before replacing it */
- copy, /* Copy the file to the destination */
- updateEvenIfNewer, /* Install this version, if newer one exists, still install */
- updateExisting, /* Always replace an existing copy */
- copyIfNewOrUpdate, /* Copy whether the target file exists or not */
- rsrcFork, dataFork, /* Copy both forks of the file */
- fsTargetPaintProgram, /* TARGET file spec for this file */
- fsSourcePaintProgram, /* SOURCE file spec for this file */
- 0, /* atom size (filled in by ScriptCheck) */
- "" /* Atom Description (for a file Installer will use file name */
- }; /* which is what we want in this case) */
- };
-
- resource 'infa' (faExampleFile) {
- format0 {
- deleteWhenRemoving, /* Delete the file if remove is clicked */
- dontDeleteWhenInstalling, /* no need to delete the target before replacing it */
- copy, /* Copy the file to the destination */
- updateEvenIfNewer, /* Install this version, if newer one exists, still install */
- updateExisting, /* Always replace an existing copy */
- copyIfNewOrUpdate, /* Copy whether the target file exists or not */
- rsrcFork, dataFork, /* Copy both forks of the file */
- fsTargetExampleFile, /* TARGET file spec for this file */
- fsSourceExampleFile, /* SOURCE file spec for this file */
- 0, /* atom size (filled in by ScriptCheck) */
- "" /* Atom Description (for a file, Installer will use file name */
- }; /* which is what we want in this case) */
- };
-
- resource 'infa' (faDocumentFile) {
- format0 {
- deleteWhenRemoving, /* Delete the file if remove is clicked */
- dontDeleteWhenInstalling, /* no need to delete the target before replacing it */
- copy, /* Copy the file to the destination */
- updateEvenIfNewer, /* Install this version, if newer one exists, still install */
- updateExisting, /* Always replace an existing copy */
- copyIfNewOrUpdate, /* Copy whether the target file exists or not */
- rsrcFork, dataFork, /* Copy both forks of the file */
- fsTargetDocumentFile, /* TARGET file spec for this file */
- fsSourceDocumentFile, /* SOURCE file spec for this file */
- 0, /* atom size (filled in by ScriptCheck) */
- "" /* Atom Description (for a file Installer will use file name */
- }; /* which is what we want in this case)*/
- };
-
-
- /********************************** Resource Atoms **************************************************/
-
- /* The resource atoms specify the details of the resource we want to install */
- /* we can specify resource we want to delete also (eg: outdate resources)*/
-
- resource 'inra' (raNewColorDA) {
- format0 {
- deleteWhenRemoving, /* Delete rsrc if remove is clicked */
- dontDeleteWhenInstalling, /* no need to delete the target before replacing it */
- copy, /* Copy rsrc to destination */
- tgtRequired, /* Target file MUST already exist to do the install */
- updateExisting, /* Always replace the rsrc */
- copyIfNewOrUpdate, /* Copy whether or not target rsrc already exists */
- ignoreProtection, /* Do it even if the target rsrc is protected */
- srcNeedExist, /* Rsrc needs to exist on source disk */
- byName, /* Use NAME to find the rsrc */
- nameMustMatch, /* this flag is ignored if finding byName */
- fsTargetSystem, /* Target file spec to install rsrc into */
- fsSourceExtrasRsrcs, /* Source file spec where to get rsrc */
- 'DRVR', /* Resource type */
- 0, /* Resource source id */
- 0, /* Resource target id */
- 0, /* atom size (filled in by ScriptCheck) */
- "Desk Accessory: New Color", /* Atom description */
- "\0x00New Color" /* Resource name */
- };
- };
-
- resource 'inra' (raSpecialColorRsrc) {
- format0 {
- deleteWhenRemoving, /* Delete rsrc if remove is clicked */
- dontDeleteWhenInstalling, /* no need to delete the target before replacing it */
- copy, /* Copy rsrc to destination */
- tgtRequired, /* Target file MUST already exist on to do the install */
- updateExisting, /* Always replace the rsrc */
- copyIfNewOrUpdate, /* Copy whether or not target rsrc already exists */
- ignoreProtection, /* Do it even if the target rsrc is protected */
- srcNeedExist, /* Rsrc needs to exist on source disk */
- byID, /* Use ID to find the rsrc */
- nameNeedNotMatch, /* Resource name need not match our specification */
- fsTargetSystem, /* Target file spec to install rsrc into */
- fsSourceExtrasRsrcs, /* Source file spec where to get rsrc */
- 'pcol', /* Resource type */
- 128, /* Resource source id */
- 128, /* Resource target id */
- 0, /* atom size (filled in by ScriptCheck) */
- "", /* Atom description (we don't want one for this rsrc - */
- /* Installer will say "Reading from System") */
- "" /* Resource name */
- };
- };
-
- /* This next resource atom deletes an obsolete resource (if it exists in the target file) */
-
- resource 'inra' (raOldRsrcToDelete) {
- format0 {
- deleteWhenRemoving, /* Delete rsrc if remove is clicked */
- deleteWhenInstalling, /* Delete target as part of installation - not copying */
- noCopy, /* Do NOT copy rsrc to destination (we're deleting it) */
- tgtRequired, /* Target file MUST already exist on to do the install */
- updateExisting, /* Always replace the rsrc */
- copyIfNewOrUpdate, /* Copy whether or not target rsrc already exists */
- ignoreProtection, /* Do it even if the target rsrc is protected */
- srcNeedNotExist, /* Rsrc does not need to exist on source disk */
- byID, /* Use NAME to find the rsrc */
- nameNeedNotMatch, /* Resource name need not match our specification */
- fsTargetSystem, /* Target file spec to install rsrc into */
- 0, /* Do not need a source file spec for a delete atom */
- 'pbit', /* Resource type */
- 0, /* Resource source id */
- 128, /* Resource target id */
- 0, /* atom size (filled in by ScriptCheck) */
- "", /* Atom description */
- "" /* Resource name */
- };
- };
-
-
- /********************************************* Audit Trail Atoms ********************************/
-
- /* This audit trail atoms are installed into the target system file and allow us to be smart */
- /* when we go to update our software. We can check the audit in the Easy Install screen and */
- /* know what to update in the future.*/
-
- resource 'inat' (atPaintWorxVer3) {
- format0 {
- fsTargetSystem, /* Target file where to install the audit atom*/
- auditPaintWorx, /* Audit atom selector.*/
- auditInstalledVer3 /* Value to place in the audit trail for this selector */
- };
- };
-
-